﻿using System;
using System.Net;
using System.Windows;
using System.Windows.Controls;
using System.Windows.Documents;
using System.Windows.Ink;
using System.Windows.Input;
using System.Windows.Media;
using System.Windows.Media.Animation;
using System.Windows.Shapes;
using MVVMFramework.Core.Model;
using MVVMFramework.Messaging;
using MVVMFramework.Core.ViewModel.Collections;

namespace MVVMFramework.Core.ViewModel
{
    public interface IListVM : IViewModel
    {
        void Initialize(IListVMInitializeArgs args);
    }

    public interface IListVMInitializeArgs
    {
        bool RequiresPaging { get; }
        IDomainModel ExistingModel { get; }
    }

    public interface IListVM<T> : IListVM
    {
        IDomainCollectionView<T> Entities { get; }
    }
}
